package com.basic.modules.nykf.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.basic.common.annotation.DictParam;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 咨询记录跟进表
 */
@Data
@TableName("n_ykf_consultation_gj")
public class ConsultationRecordsGjEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 跟进记录id
     */
    @TableId
    private Long gjjlId;

    /**
     * 咨询记录id
     */
    private Long zxid;

    /**
     * 当前节点(字典:dqjd)
     */
    private String dqjdVal;

    /**
     * 当前节点
     */
    @DictParam(field = "dqjdVal", targetField = "dqjdName", dictType = "dqjd")
    private String dqjdName;

    /**
     * 下次跟进时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date xcgjsj;

    /**
     * 跟进时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date gjsj;

    /**
     * 跟进方式(字典:zxgjfs)
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String gjfsVal;

    /**
     * 跟进方式
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    @DictParam(field = "gjfsVal", targetField = "gjfsName", dictType = "zxgjfs")
    private String gjfsName;

    /**
     * 报价明细及其他
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String bjmxjqt;

    /**
     * 创建人id
     */
    private Long createUserId;

    /**
     * 创建人name
     */
    @TableField(exist = false)
    private String createUserName;

    @TableField(exist = false)
    private String zxkhmc;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    @TableField(exist = false)
    private String keyword;

    @TableField(exist = false)
    private List<FileNewEntity> fileNewEntityList;

    @TableField(exist = false)
    private Boolean timeoutFlag;

    @TableField(exist = false)
    private String fileIds;
}